package com.ruoyi.business.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 *  统一的组件权限表对象 
 * 
 * @author ruoyi
 * @date 2025-11-18
 */
public class ComponentGrants extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @Excel(name = "id")
    private  Long  id;
    /**
     * 企业编码
     */
    @Excel(name = "企业编码")
    private  String  enterpriseCode;
    /**
     * 租户内角色id
     */
    @Excel(name = "租户内角色id")
    private  Long  roleId;
    /**
     * 组件id
     */
    @Excel(name = "组件id")
    private  Long  componentId;
    /**
     * atomic, composite, business, scenario
     */
    @Excel(name = "atomic, composite, business, scenario")
    private  String  componentType;
    /**
     * READ, USE, EDIT, ADMIN
     */
    @Excel(name = "READ, USE, EDIT, ADMIN")
    private  String  permissionLevel;

    /**
     * 获取id 
     * @return id
     */
    public  Long  getId(){
        return id;
    }
    /**
     * 设置id
     * @param id id
     */
    public  void  setId(Long id){
        this.id = id;
    }
    /**
     * 获取企业编码 
     * @return 企业编码
     */
    public  String  getEnterpriseCode(){
        return enterpriseCode;
    }
    /**
     * 设置企业编码
     * @param enterpriseCode 企业编码
     */
    public  void  setEnterpriseCode(String enterpriseCode){
        this.enterpriseCode = enterpriseCode;
    }
    /**
     * 获取租户内角色id 
     * @return 租户内角色id
     */
    public  Long  getRoleId(){
        return roleId;
    }
    /**
     * 设置租户内角色id
     * @param roleId 租户内角色id
     */
    public  void  setRoleId(Long roleId){
        this.roleId = roleId;
    }
    /**
     * 获取组件id 
     * @return 组件id
     */
    public  Long  getComponentId(){
        return componentId;
    }
    /**
     * 设置组件id
     * @param componentId 组件id
     */
    public  void  setComponentId(Long componentId){
        this.componentId = componentId;
    }
    /**
     * 获取组件类型 
     * @return 组件类型
     */
    public  String  getComponentType(){
        return componentType;
    }
    /**
     * 设置组件类型
     * @param componentType 组件类型
     */
    public  void  setComponentType(String componentType){
        this.componentType = componentType;
    }
    /**
     * 获取权限内容 
     * @return 权限内容
     */
    public  String  getPermissionLevel(){
        return permissionLevel;
    }
    /**
     * 设置权限内容
     * @param permissionLevel 权限内容
     */
    public  void  setPermissionLevel(String permissionLevel){
        this.permissionLevel = permissionLevel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("enterpriseCode", getEnterpriseCode())
            .append("roleId", getRoleId())
            .append("componentId", getComponentId())
            .append("componentType", getComponentType())
            .append("permissionLevel", getPermissionLevel())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
